package com.cqz.tools;

import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 工具类
 */
public final class Tools {
    /**
     * 判断字符串是否为null或""
     * @param s
     * @return
     */
    public static boolean isNull(String s){
        if(s==null||s.trim().equals("")){
            return true;
        }
        return false;
    }

    /**
     * 判断输入数字是否为空且大于0
     * @param bigDecimal
     * @return
     */
    public static boolean isNull(BigDecimal bigDecimal){
        if(bigDecimal==null||bigDecimal.compareTo(new BigDecimal(0))<0){
            return true;
        }
        return false;
    }

    /**
     * 将前台input（type=date）中传递进来的字符串转化成date类型方便数据库存储
     * @param date
     * @return
     */
    public static Date getDate(String date){
        if(Tools.isNull(date)){
            return null;
        }else {
            SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
            try {
                return sdf.parse(date);
            } catch (ParseException e) {
                return null;
            }
        }
    }

    /**
     * 比较开始日期是否小于等于结束日期
     * @param startDate 开始日期
     * @param endDate   结束日期
     * @return
     */
    public static boolean compareDate(Date startDate,Date endDate){
        if(startDate==null||endDate==null) return true;
        if(startDate.before(endDate))return true;
        else if(startDate.equals(endDate)) return true;
        else return false;
    }

    /**
     * 将数据库中得到的date类型转化成String类型方便传递到前台显示
     * @param date
     * @return
     */
    public static String date2Str(Date date){
        return new SimpleDateFormat("yyyy-MM-dd").format(date);
    }
}
